"""
Celery配置文件
用于处理异步任务，如长时间运行的数据处理任务
"""

import os
from celery import Celery

# 创建Celery实例
celery_app = Celery('tumor_data_processing')

# 配置Celery
celery_app.conf.update(
    broker_url=CELERY_BROKER_URL,
    result_backend=CELERY_RESULT_BACKEND,
    task_serializer='json',
    accept_content=['json'],
    result_serializer='json',
    timezone='UTC',
    enable_utc=True,
    # 任务路由配置
    task_routes={
        'data_processing.dimension_reduction': {'queue': 'data_processing'},
        'data_processing.model_calibration': {'queue': 'data_processing'},
        'data_processing.export_results': {'queue': 'data_processing'},
    }
)

# 自动发现任务
celery_app.autodiscover_tasks(['routers.data'])

if __name__ == '__main__':
    celery_app.start()